'use strict';
const dayjs = require("dayjs");
module.exports = app => {
    const { INTEGER, DATE, STRING, TEXT } = app.Sequelize;
    return app.model.define(
        'WxMenu',
        {
            id: {type: INTEGER, primaryKey: true, autoIncrement: true},
            name: STRING,
            url: STRING,
            image: {
              type: TEXT,
              // 拼接imgHost
              get() {
                return `${app.config.imgHost}${this.getDataValue('image')}`;
              }
            },
            sort: INTEGER,
            status: INTEGER,
            create_time: {
                type: DATE,
                get() {
                    return dayjs(this.getDataValue('create_time')).format('YYYY-MM-DD HH:mm:ss');
                }
            },
            updated_time: {
                type: DATE,
                get() {
                    return dayjs(this.getDataValue('updated_time')).format('YYYY-MM-DD HH:mm:ss');
                }
            }
        },
        {
            tableName: 'wx_menu',
            timestamps: true, // 启用时间戳(createdAt, updatedAt)
            updatedAt: 'updated_time', // 不想要 updatedAt
            createdAt: 'create_time', // 想要  createdAt 但是希望名称叫做 create_time
        }
    );
};
// 创建mysql建表语句
// CREATE TABLE `wx_menu` (
//   `id` int(11) NOT NULL AUTO_INCREMENT,
//   `name` varchar(255) DEFAULT NULL,
//   `url` varchar(255) DEFAULT NULL,
//   `icon` varchar(255) DEFAULT NULL,
//   `create_time` datetime DEFAULT NULL,
//   `updated_time` datetime DEFAULT NULL,
//   PRIMARY KEY (`id`)
// ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

